import java.util.*;

/**
 * @author LKQ
 * @date 2022/3/24 20:03
 * @description 动态规划，设函数f[i]为以i先手的的状态，f[i] = true为以i先手必胜态，否则1为必败态。
 */
public class Solution2 {
    public static void main(String[] args) {

    }
    public boolean divisorGame(int n) {
        boolean[] f = new boolean[n + 5];
        f[1] = false;
        f[2] = true;
        for (int i = 3; i <= n; i++) {
            for (int j = 1; j < i; j++) {
                if ((i % j == 0) && !f[i-j]) {
                    // 存在一个j满足条件并且对手为必败态，那么当前为必胜态
                    f[i] = true;
                    break;
                }
            }
        }
        return f[n];
    }
}
